home *** CD-ROM | disk | FTP | other *** search
-
- ; This is a sample PROTOCOL.INI file for the Ungermann-Bass NDIS MAC driver
- ; for Access/MC, Access/PC-16, and Access/PC-8 network adapter cards. This
- ; driver's name is "UBNEA". The executable files are UBNEA.OS2 and UBNEA.DOS,
- ; for OS/2 and DOS respectively.
-
- DriverName = UBNEA$
-
- AdapterType = Access/PC-8
- ; AdapterType = Access/PC-16
- ; AdapterType = Access/MC
-
- IO_Port = 0x300
- IRQ_Level = 3
- ; SlotNumber = 4
- MaxTransmits = 6
- MaxMulticast = 16
- ReceiveMethod = ReceiveChain
- ReceiveBuffers = 64
- ReceiveBufSize = 600
-
- ; Comments about UBNEA parameters:
- ; -------------------------------
- ; DriverName:
- ; This parameter's value must be UBNEA$, or, in the case where
- ; multiple adapters are installed, UBNEA$ for the first adapter's
- ; DriverName, UBNEA2$ for the second one, UBNEA3$ for the third, and
- ; so on.
- ; AdapterType:
- ; This specifies the type of Ungermann-Bass adapter. The possible
- ; values are:
- ; AdapterType = Access/PC-16 for the Access/PC-16 adapter;
- ; AdapterType = Access/PC-8 for the Access/PC-8 adapter; and
- ; AdapterType = Access/MC for the Access/MC adapter.
- ; IO_Port: (Default = 0x300; for other choices see the lists below.)
- ; This specifies the base address in the Host PC's I/O address space
- ; of the adapter's I/O ports. Its value must agree with the jumpered
- ; configuration of the adapter.
- ; For the Access/MC, "IO_Port" is not needed and will be ignored.
- ; For the Access/PC-8, there are 8 possible choices for the I/O port
- ; base address. They are:
- ; 0x200, 0x240, 0x280, 0x2C0, 0x300, 0x340, 0x380, 0x3C0.
- ; For the Access/PC-16 there are 32 possible choices:
- ; 0x000, 0x020, 0x040, 0x060, 0x080, 0x0A0, 0x0C0, 0x0E0,
- ; 0x100, 0x120, 0x140, 0x160, 0x180, 0x1A0, 0x1C0, 0x1E0,
- ; 0x200, 0x220, 0x240, 0x260, 0x280, 0x2A0, 0x2C0, 0x2E0,
- ; 0x300, 0x320, 0x340, 0x360, 0x380, 0x3A0, 0x3C0, 0x3E0.
- ; The adapter uses 32 sequential I/O port addresses starting at the base
- ; address. That is, if you choose, for example, 0x300, the entire range
- ; of addresses 0x300, 0x301, ..., 0x31F will be used by the adapter.
- ; When you install an Access/PC-16 or Access/PC-8 adapter, you must
- ; choose an I/O base address for it. You must choose it such that none
- ; of the addresses in the corresponding range are already allocated to
- ; a system I/O device or to another adapter which is installed in your
- ; system. Then you set the jumpers on the adapter to select the base
- ; address you've chosen, and you also specify that base address as the
- ; value for the "IO_Port" parameter. Note that in many cases the default
- ; base address (0x300) will be just fine, and you won't have to change
- ; the jumpers.
- ; IRQ_Level: (Default = 3; other choices: see below.)
- ; This specifies the interrupt request (IRQ) level that will be used
- ; by the adapter-to-PC interrupt. Its value must agree with the jumpered
- ; configuration of the adapter.
- ; For the Access/MC, "IRQ_level" is not needed and will be ignored.
- ; For the Access/PC-8 and Access/PC-16, the choices are as follows.
- ; Access/PC-8: 2, 3, 4, 5, and 7.
- ; Access/PC-16: 2, 3, 4, 5, 7, 10, 11, 12, and 15.
- ; When you install an Access/PC-8 or Access/PC-16, you must choose
- ; an IRQ level for the adapter. You must choose a level that is not
- ; already allocated to a system I/O device or to another adapter which
- ; is installed in your system. You set the jumpers on the adapter to
- ; select the level you've chosen, and you also specify that level as the
- ; value for the "IRQ_Level" parameter. In many system configurations
- ; the default level (IRQ level 3) will be available, and you won't have
- ; to change the jumpers.
- ; MaxTransmits: (Default = 8; Min = 1; Max = around 400.)
- ; This specifies the number of "TransmitChain"s that the MAC driver
- ; guarantees to accept without giving an "OUT_OF_RESOURCE" response.
- ; MaxMulticast: (Default = 16; Min = 0; Max = 255.)
- ; This specifies the maximum number of multicast addresses that can
- ; be in effect simultaneously. (NOTE that there's no 's' on the end of
- ; this keyword.)
- ; ReceiveMethod: Choices: "ReceiveLookahead" and "ReceiveChain".
- ; Default = ReceiveLookahead for Access/MC and Access/PC-16
- ; Default = ReceiveChain for Access/PC-8
- ; This determines the method of received frame delivery the MAC
- ; driver will use. The possibilities are described below. Which one
- ; is best to use depends on (a) which kind of adapter you have and on
- ; (b) how the Protocol driver you're using works. As a general rule,
- ; use: ReceiveMethod = ReceiveChain for the Access/PC-8, and
- ; use: ReceiveMethod = ReceiveLookahead for the Access/MC and
- ; Access/PC-16.
- ; (1) ReceiveMethod = ReceiveLookahead
- ; When a received frame is available and Indications are On, the MAC
- ; driver moves the frame's data from the adapter's receive buffer area
- ; into a single, dedicated, MAC buffer in Host memory, and calls the
- ; Protocol driver's "ReceiveLookahead" routine. "ReceiveLookahead" is
- ; given the total length of the frame and a pointer to the copy of the
- ; frame in the buffer. If the Protocol driver wants the frame, it must
- ; copy the frame before returning from "ReceiveLookahead". Since the
- ; entire frame is available in the buffer, the Protocol driver may copy
- ; the frame directly. Alternatively, it may call the MAC driver's
- ; "TransferData" routine to do the copying. When the Protocol driver
- ; returns from "ReceiveLookahead", the MAC driver frees the dedicated
- ; buffer for use in delivering more frames.
- ; In this method, frames are left in the adapter's receive buffer
- ; area until they can be delivered to the Protocol driver. The small
- ; size (4096 bytes) of the receive buffer area in the Access/PC-8 makes
- ; this method unsuitable for that adapter, except in applications where
- ; the volume of network traffic is low.
- ; The important advantage of this method is that the MAC allocates
- ; no receive buffers (well, only one) in Host memory.
- ; This method works best if the Protocol driver is able to copy the
- ; frame to the Protocol driver's client's buffers at the time "Receive-
- ; Lookahead" is called. It is also a good method if the Protocol driver
- ; always copies frames into internal buffers of its own.
- ; (2) ReceiveMethod = ReceiveChain
- ; In this method, the MAC driver moves frames from the adapter's
- ; receive buffer area into receive buffers in the Host memory as frames
- ; arrive. It does this independently of whether the frames can be
- ; immediately delivered to the Protocol driver, i.e., independently of
- ; whether Indications are On or Off. Its goal is to keep the adapter's
- ; receive buffer area free, so that frames arriving from the network
- ; are not lost.
- ; When Indications are On and a received frame is available in the
- ; Host-memory receive buffers, the MAC driver will call the Protocol
- ; driver's "ReceiveChain" routine, passing it an "RxBufDescr" which
- ; points to the frame in the Host-memory buffers. The Protocol driver
- ; can copy the frame immediately or leave it in the Host-memory buffers.
- ; It must eventually call the MAC driver's "ReceiveRelease" routine to
- ; free the Host-memory buffers for reuse.
- ; In this mode, the MAC driver allocates receive buffers in the Host
- ; memory. These buffers are allocated at driver INIT time. Their number
- ; and size are determined by the "ReceiveBuffers" and "RcvBufSize" para-
- ; meters.
- ; This method is intended primarily to be used with the Access/PC-8
- ; adapter, in which the size of the adapter's receive buffer area is
- ; small and the possibility of losing frames due to adapter receive
- ; buffer overrun is real.
- ; Another advantage of this method is that in it the MAC driver can
- ; provide a possibly large amount of long-term frame buffering in which
- ; a Protocol driver can leave received frames until it can deliver them
- ; to its clients. This advantage comes at the cost of the space devoted
- ; to the Host-memory buffers.
- ; ReceiveBuffers: (Default = 32; Min = 16; Max = 512.)
- ; This specifies the number of receive buffers that the MAC driver
- ; will allocate in the Host memory. This parameter is meaningful only
- ; if "ReceiveMethod = ReceiveChain" is selected. If "ReceiveMethod =
- ; ReceiveLookahead" is used, no receive buffers will be allocated in
- ; Host memory -- the "ReceiveBuffers" parameter will be ignored.
- ; ReceiveBufSize: (Default = 600; Min = 256; Max = 1514.)
- ; This specifies the size of the receive buffers the MAC driver will
- ; allocate in Host memory. This should be large enough to hold the
- ; normal expected received frame. It need not be large enough to hold
- ; the largest expected frame. The MAC driver will handle large frames
- ; in multiple receive buffers. The value of ReceiveBufSize must be even.
- ; "ReceiveBufSize" is meaningful only if "ReceiveMethod = ReceiveChain"
- ; is selected. If "ReceiveMethod = ReceiveLookahead" is used, no Host-
- ; memory receive buffers will be allocated -- the "ReceiveBufSize"
- ; parameter will be ignored.
- ; SlotNumber: (Min = 1; Max = 8.)
- ; This parameter is needed only when multiple Access/MC adapters,
- ; and multiple instances of the UBNEA driver, are installed. Even then,
- ; this parameter is required only if it is necessary to override the
- ; default association between driver instances and adapters. By default,
- ; the UBNEA driver instance that comes first in PROTOCOL.INI will be
- ; associated with the Access/MC adapter in the lowest numbered slot, the
- ; UBNEA driver instance that comes second will be associated with the
- ; Access/MC adapter in the second lowest numbered slot, and so on.
- ; PermanentAddr: The value is a string of 12 ASCII hexadecimal digits,
- ; for example: PermanentAddr = "00DD01AABBCC"
- ; This parameter provides a way to override the "Permanent Station
- ; Address" that's built into the adapter. Note that this parameter is
- ; normally not needed, and shouldn't be used. The NDIS specification
- ; strongly discourages configuring the "Permanent Station Address".
- ;
- ; How Much Host Memory UBNEA Uses
- ; -------------------------------
- ; You can compute the amount of PC memory UBNEA will use. It depends
- ; on the "ReceiveMethod" you select and on the values you choose for the
- ; "MaxTransmits", "MaxMulticast", "ReceiveBuffers", and "ReceiveBufSize"
- ; parameters. The total space used will be the sum of the following four
- ; items.
- ; (1) For driver code and data: 11000 (4218 data + 6782 code)
- ; (2) For transmit queueing: 16 + (MaxTransmits - 2) * 146
- ; (3) For multicast addresses: 4 + (MaxMulticast * 16)
- ; (4) For receive buffers: 16 + ReceiveBuffers * (ReceiveBufSize + 10)
- ; Item (4) does not apply if you use "ReceiveMethod = ReceiveLookahead".
- ; The total you compute may not be exactly correct but it should be
- ; close. The reasons for inexactness are: (a) the value for item number
- ; (1) will vary with different versions of the drivers; and (b) the
- ; other items may take up a little more space than the formulas imply,
- ; because of the need to allocate buffers and other data structures at
- ; doubleword-aligned or paragraph-aligned boundaries.
- ; Under DOS, all the space used by the driver is allocated in one
- ; contiguous piece. It will be in "conventional" memory (that is, in
- ; the first 640K) if the driver is loaded by a normal "DEVICE=" line in
- ; CONFIG.SYS, or in "upper" memory (above 640K) if the driver is loaded
- ; by "DEVICEHIGH=" or by "LOADHI". Note that if the total memory used
- ; is large (because of a large value for item (4)), there may not be
- ; room to load the driver into "upper" memory.
- ; Under OS/2, item (1) is allocated in low memory, and the other
- ; items are allocated in high memory if possible.
-